<template>
  <view class="login">
    <view class="login-view">
      <view class="t-login">
        <!-- 添加空值检查 -->
        <uni-card v-if="studentProfile" :title="studentProfile.studentName" :isFull="true"  >
          <text> ID :{{ studentProfile.ID }}</text> <br>
          <text> 班级 :{{ studentProfile.class }}</text> <br>
          <text> 年级 :{{ studentProfile.grade }}</text> <br>


          <img :src="studentProfile.picture"  width="80" height="80" alt=""> <br>

          <text>    成绩  </text> <br>
		  
          <!-- 这里也存在语法错误，正确使用 v-for 渲染成绩列表 -->
          <template v-if="studentScores">
<!--            "uid": 1,-->
<!--            "english": 88,-->
<!--            "physics": 85,-->
<!--            "chemistry": 84,-->
<!--            "politics": 86,-->
<!--            "physical_education": 96,-->
<!--            "information_technology": 87,-->
<!--            "network": 77-->
<form  class="cjform">
  <form  class="cjform">
    <div class="cjitem"> <span>英语 </span>  <input type="number" v-model.number="studentScores.english" min="0" max="100" step="1" /></div> <br>
    <div class="cjitem"> <span> 物理 </span> <input type="number" v-model.number="studentScores.physics" min="0" max="100" step="1" /></div> <br>
    <div class="cjitem"> <span> 化学</span>    <input type="number" v-model.number="studentScores.chemistry" min="0" max="100" step="1" /></div> <br>
    <div class="cjitem"> <span> 政治</span> <input type="number" v-model.number="studentScores.politics" min="0" max="100" step="1" /></div> <br>
    <div class="cjitem"> <span> 体育 </span> <input type="number" v-model.number="studentScores.physical_education" min="0" max="100" step="1" /></div> <br>
    <div class="cjitem"><span>  信息技术</span>  <input type="number" v-model.number="studentScores.information_technology" min="0" max="100" step="1" /></div> <br>
    <div class="cjitem"> <span> 网络</span>  <input type="number" v-model.number="studentScores.network" min="0" max="100" step="1" /></div> <br>
    <button  type="primary"  @click="editStudent(studentScores)">提交</button>
  </form>
            
</form>








          </template>
          <!-- 移除原来错误的 forEach 写法 -->
        </uni-card>
        <!-- 当 studentProfile 为 null 时显示加载提示 -->
        <view v-else>加载中...</view>
      </view>
    </view>
  </view>
</template>
<script setup>
import { ref, onMounted } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
import { findStudentProfile,findStudentScores,updateStudentScores } from '@/api/base.js';
const studentProfile = ref(null);
const studentScores = ref(null); // 修正变量名
// 定义一个响应式变量来存储获取到的 id
const id = ref('');
// 定义查找学生档案的函数
const searchStudent =  async () => {
  try {
    // 假设这里需要传递学生 ID 作为查询参数
    const [info, score] = await Promise.all([
      findStudentProfile(id.value),
      findStudentScores(id.value)
    ]);

    // findStudentScores
    // const response = await findStudentProfile({ ID: 1 });
    if (info.code === 0 && score.code=== 0 ) { // 假设响应码 0 表示请求成功
      console.log('查找学生档案成功:', info.data);
      console.log('查找学生成绩成功:', score.data);
      studentProfile.value = info.data;
      studentScores.value = score.data; // 修正变量名
    } else {

      uni.showToast({
        title: '查找学生档案或成绩失败',
        icon: 'none'
      });

      console.error('查找学生档案失败:', info);
      console.error('查找学生成绩失败:', score);
    }
  } catch (error) {
    console.error('请求出错:', error);
  }
};
// editStudent  实现编辑学生成绩的函数
const editStudent = async (scores) => {
  console.log("编辑学生成绩 ------------------------" ,studentScores.value);
  console.log("编辑学生成绩:", scores);
  try {
    // 调用 updateStudentScores 函数进行更新
    const response = await updateStudentScores(scores);
    if (response.code === 0) { // 假设响应码 0 表示请求成功
      uni.showToast({
        title: '更新学生成绩成功',
        icon: 'success'
      });
	  // 返回
	  
      // 更新成功后，可以在这里进行一些操作，比如跳转页面等
      uni.navigateBack({
        delta: 1 // 返回上一页
      })
      } else {
      uni.showToast({
        title: '更新学生成绩失败',
        icon: 'none'
      });
    }
  }
  catch (error) {
    console.error('请求出错:', error);
  }
};



onLoad((options) => {

  if (options && options.ID) {
    if (Array.isArray(options.ID)) {
      // 如果是数组，取第一个元素
      id.value = options.ID[0];
      console.log("获取到的ID  为", options.ID )
    } else {
      id.value = options.ID;
      console.log("获取到的ID  为", options.ID )
    }
  }
  searchStudent();
});
</script>
<style>
/* 已有样式代码 */
.cjitem {

  line-height: 30px;
  display: inline-block;
  width: 100%; /* 设置宽度为 100% */
    margin-bottom: 10px; /* 设置底部外边距为 10px */
}
.cjitem  input {
  width: 68%; float: left; /* 设置 input 宽度为 60% */
  border: 1px solid #0099CC; /* 设置 input 边框为 1 像素宽的黑色实线 */
}
.cjitem span {     line-height: 30px;
  text-align: center; /* 设置 label 文本右对齐 */;
  width: 25%; float: left; /* 设置 label 宽度为 30% */
  color: #333; /* 设置 label 文本颜色为蓝色 */
}
</style>